package com.shequan.user.service;

import com.shequan.common.bean.ResultDataStruct;
import com.shequan.user.bean.bo.UserInfoBO;
import com.shequan.user.bean.bo.UserSession;
import com.shequan.user.bean.pojo.UserInfo;

/**
 * <P>
 * Copyright 2012.
 * </p>
 * <P>
 * All Rights Reserved.
 * </p>
 * @author Administrator
 * @version 1.0, 2012-2-27
 * @see com.shequan.user.service.UserInfoService 
 * @since 1.0
 */
public interface UserInfoService {


	/**
	 * 检测帐户是否允许注册
	 * @param userName
	 * @return
	 */
	ResultDataStruct<String> isEmailReg(String userName);
	
	/**
	 * 检测密码是否一致
	 * @param userPwd
	 * @param userPwdConfirm
	 * @return
	 */
	ResultDataStruct<String> isCorrectPwd(String userPwd,String userPwdConfirm);

	/**
	 * 注册用户基础信息
	 * @param userInfo
	 * @return
	 */
	ResultDataStruct<String> registBaseInfo(UserInfoBO userInfo);

	/**
	 * 根据key验证用户激活信息
	 * @param userName
	 * @param key
	 * @return
	 */
	ResultDataStruct<UserInfo> activityUserByKey(String userName, String key);

	/**
	 * 根据用户名修改用户信息，并返回用户id
	 * @param userInfoBo
	 * @return userID
	 */
	ResultDataStruct<String> modifyUserInfo(UserInfoBO userInfoBo);

	/**
	 * 根据用户名获得用户信息
	 * @param userName
	 * @return
	 */
	UserInfo queryUserInfoByUserName(String userName);
	/**
	 * 根据用户名和密码查询用户信息
	 * @param userName
	 * @param password
	 * @return
	 * @author mazg
	 * @date 2012-5-12 上午11:18:16
	 */
	UserInfo queryUserByUserNameAndPWD(String userName, String password);

}